<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>为什么要用Promise</title>
</head>
<body>

<script>
  /* 
		优势：
		  1. 指定回调函数的方式更加灵活: 
				    纯回调的形式: 必须在启动异步任务前指定
				    promise: 启动异步任务 => 返回promie对象 => 给promise对象绑定回调函数(甚至可以在异步任务结束后指定)

		  2. 支持链式调用, 可以解决回调地狱问题
				    (1).什么是回调地狱：
									回调函数嵌套调用, 外部回调函数异步执行的结果是嵌套的回调函数执行的条件（请求有顺序的依次发送）
				    (2).回调地狱的缺点：
									不便于阅读 / 不便于异常处理
				    (3).一个不是很优秀的解决方案：
									借助Promise中then的链式调用+错误穿透
									
			3.回调地狱终极解决方案
						async/await（底层实际上依然使用then的链式调用）
  */
	
</script>
</body>
</html>